package com.vito.oa.act.extend.dao;

import java.util.LinkedList;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.vito.act.approval.model.ActApprovalProgressModel;
import com.vito.base.model.MyHashMap;
import com.vito.oa.act.extend.model.OaActExBussDefModel;
import com.vito.oa.act.extend.model.OaActExBussModel;
import com.vito.oa.act.model.ActUserProcessSettingModel;

public interface OaActApprovalProgressMapper{
	/**
	 * 流程查询（分页）
	 * @param model
	 * @return
	 */
	public List<MyHashMap<String, String>> queryProgress(OaActExBussModel model);
	/**
	 * 流程个数查询
	 * @param model
	 * @return
	 */
	public int queryProgressCount(OaActExBussModel model);
	/**
	 * 添加流程
	 * @param model
	 * @return
	 */
	public int saveProgress(OaActExBussModel model);
	public int deleteProgress(String processKey);//删除流程
	public int updateProgressBaseMsg(ActApprovalProgressModel model);//更新流程基本信息
	/**
	 * 添加流程
	 * @param model
	 * @return
	 */
	//public int saveProgressNode(@Param("lists") Set<Map<String, String>> lists);
	public int saveProgressNode(@Param("lists") LinkedList<OaActExBussDefModel> lists);
	public int deleteProgressNode(String processKey);
	public List<Map<String, String>> queryProgressNode(String processKey);
	/**
	 * 修改流程状态
	 * @param model
	 * @return
	 */
	public int updateProgressStatus(Map<String, String> map);
	/**
	 * 修改流程排序
	 * @param model
	 * @return
	 */
	public int updateProgressOrder(Map<String, Object> map);
	/**
	 * 流程导入用户企业
	 * @param map
	 */
	public void addProcessToCompany(Map<String,String> map);
}
